"""
Fortran module global_types:
Global types module. Types and constants
for the four default data types are defined.
**Details**
The four default data types available are:
- single precision real (S)
- double precision real (D)
- single precision complex (C)
- double precision complex (Z)
For each data types: the zero element, the one element
or the kind are defined. Moreover, datatypes
as the ptr_type are defined.
"""
[docs]
class ptr_type():
"""
Pointer containers.
**Class variables**
ptr : class(*), pointer
Pointer.
"""
[docs]
class comp_type():
"""
Allocatable containers (component).
**Class variables**
comp : class(*), allocatable
Container.
"""
[docs]
class str_type():
"""
Variable length character type container.
**Class variables**
str : character(len=:), allocatable
Allocatable string.
"""
[docs]
class log_arr_type():
"""
Vector with logical entries.
**Class variables**
arr : logical, dimension(:), allocatable
Allocatable logical vector.
"""
[docs]
class int_arr_type():
"""
Vector with integer entries.
**Class variables**
arr : integer, dimension(:), allocatable
Allocatable integer vector.
"""
[docs]
class sngl_arr_type():
"""
Vector with real entries of single-precision.
**Class variables**
arr : real(KIND=ST_ELEM_KIND), dimension(:), allocatable
Allocatable real single-precision vector.
"""
[docs]
class dbl_arr_type():
"""
Vector with real entries of double-precision.
**Class variables**
arr : double precision, dimension(:), allocatable
Allocatable real double-precision vector.
"""
[docs]
class dcmplx_arr_type():
"""
Vector with complex entries of double-precision.
**Class variables**
arr : complex(kind=DBL_CMPLX_KIND), dimension(:), allocatable
Allocatable complex double-precision vector.
"""
[docs]
class str_arr_type():
"""
Vector with str_type entries.
**Class variables**
arr : type(str_type), dimension(:), allocatable
Allocatable str_type vector.
"""
[docs]
class dbl_arr2_type():
"""
Vector with dbl_arr_type entries.
**Class variables**
arr : type(dbl_arr_type), dimension(:), allocatable
Allocatable dbl_arr_type vector.
"""
[docs]
class dcmplx_arr2_type():
"""
Vector with dcmplx_arr_type entries.
**Class variables**
arr : type(dcmplx_arr_type), dimension(:), allocatable
Allocatable dcmplx_arr_type vector.
"""